ToeTagger 2.2.0
===============

Previous release: 2.1.0
Current release: 2.2.0
Version type: Minor feature, persistence, and compatibility release

PERSISTENT PERSONAL STAR COUNTER
- Personal star totals now persist across game sessions.
- Progress is stored independently for each save-file slot.
- Progress is additionally separated by the active ROM hack.
- Each player owns and stores their own personal total locally.
- The separate Personal Star Counter mod is not required.
- Stored progress loads automatically when ToeTagger starts.
- ToeTagger refreshes its storage context when the save slot or ROM hack changes.
- New totals are saved immediately after collecting a star or key.
- The loaded local total is synchronized to other players while connected.
- Existing duplicate-interaction protection remains active.
- Changing storage context clears stale duplicate-object tracking.

ROM-HACK NAME DISPLAY
- Restored the ROM-hack name displayed in the ToeTagger panel.
- ToeTagger now checks active mod metadata for the currently loaded ROM hack.
- Supports both "romhack" and "rom hack" category naming.
- Incompatibility metadata can also identify ROM-hack mods.
- Removes color and formatting control characters from displayed names.
- Retains _G.ROMHACK.name as a compatibility fallback.
- Retains synchronized MarioHunt ROM-hack identifiers as a final fallback.
- Vanilla and default identifiers display "Super Mario 64".

MARIOFIGHTER HEALTH-BAR COMPATIBILITY
- Floating in-world player health bars now display MarioFIGHTer health for active fighters.
- Correctly maps all four MarioFIGHTer fighter slots used by 1v1, 2v2, tag, and FFA matches.
- Converts MarioFIGHTer's configurable health scale into ToeTagger's eight health segments.
- Players outside a fight continue displaying normal SM64 health.
- ToeTagger sidebar health bars intentionally remain normal SM64 health bars.

MARIOFIGHTER ACTIVITY COMPATIBILITY
- The FIGHT! activity badge now uses MarioFIGHTer's official player-fighting API when available.
- Legacy synchronized fight fields remain available as a fallback.
- Compatibility calls are protected so missing or incompatible MarioFIGHTer builds cannot break ToeTagger.
- Fight-badge flashing now uses ToeTagger's safe timer helper.
- Updated the flashing red and yellow colors for stronger contrast.

MARIOFIGHTER REQUEST AND REPLY TAGS
- MarioFIGHTer challenge and reply text now appears above floating ToeTagger nametags.
- Supported labels include FIGHT?, ..., ME TOO?, YOU'RE ON!, LET'S DO THIS!,
  NOT IN THE MOOD, =(, and I GIVE UP!
- Request text is centered, outlined, distance-scaled, and uses MarioFIGHTer's role colors.
- ToeTagger announces ownership of remote request tags to prevent duplicate MarioFIGHTer labels.
- Protected API calls prevent request-tag failures from producing ToeTagger errors.

POOPER ACTIVITY COMPATIBILITY
- Replaced direct inspection of one POOPer charge field with POOPer's official activity API.
- Supports POOPING, I AM BONO!, OH NO!!, CLEANING UP, 777, POWER FART!,
  DEATH POOP!, and POOPMAN activity states.
- POOPer controls the activity text color, animation, and scale.
- Missing or older POOPer builds safely fall back without breaking ToeTagger.

CHAINSMOKEER COMPATIBILITY
- Added ChainSMOKEer activity-badge support.
- Players under ChainSMOKEer's marijuana effect display STONED.
- Sidebar sizing reserves sufficient space for the STONED badge.
- Missing or incompatible ChainSMOKEer builds cannot break ToeTagger.

SIDEBAR LAYOUT AND CLIPPING FIXES
- Activity badges now receive dedicated horizontal space after the health bar and cap marker.
- Single-line statistics shift right to prevent overlap with activity text.
- Panel width calculations now account for longer compatibility labels.
- Badges no longer rely on right-edge placement that could collide with player statistics.
- Reserved sizing covers MarioFIGHTer, POOPer, ChainSMOKEer, and NUZLOCKer labels.

COMPATIBILITY AND BEHAVIOR NOTES
- Base ToeTagger functionality does not require MarioFIGHTer, POOPer, or ChainSMOKEer.
- Advanced activity and request labels require companion versions that expose their ToeTagger APIs.
- MarioFIGHTer health bars read synchronized fight state and continue working without the request-tag API.
- Personal star persistence is local to each player and synchronized only while that player is connected.
- Star/key collection uses SM64CoopDX's INTERACT_STAR_OR_KEY interaction type.

INSTALLATION
1. Replace the previous ToeTagger.lua with the included ToeTagger.lua.
2. Do not install Personal Star Counter solely for ToeTagger; it is not required.
3. Restart or reload mods so the new 2.2.0 metadata and compatibility hooks initialize.
